![]() |
![]() |
![]() |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() |
![]() |
To access the contents, click the chapter and section titles.
Oracle Performance Tuning and Optimization
Network Enhancements If the network is a bottleneck in your system, you can improve performance by adding a faster network interface controller (NIC) or by segmenting the network into pieces and accessing the server through multiple networks. In recent months, 100 megabit-per-second Ethernet has emerged as the standard for Ethernet networking. If you upgrade existing 10 megabit-per-second Ethernet, your performance improvement can be enormous. Even if you have 100 megabit-per-second Ethernet, you may find it useful to segment the network into several subnets. Both approaches allow more network packets through to the server. If you find that your network is used more than 60 to 70 percent, you should seriously think about upgrading. Depending on your configuration, you may benefit from the use of Token Ring or fiber-optics networking. Frequently, the network hardware you already have dictates the route you take in terms of new network hardware. Miscellaneous Enhancements You may be able to take advantage of other hardware or software enhancements to improve OLTP performance. Some of these performance enhancements are very innovative. The following sections look at a few of these enhancements. Etherplex from Systek The Etherplex board from Systek provides hardware login support for UNIX systems. The board includes an Ethernet controller and provides TCP/IP support as well as rlogin and telnet support. The Etherplex board uses a high-speed RISC processor to do its work and provides support for up to 2,048 network connections. By offloading the terminal and network overhead to the Etherplex board, you can dedicate the systems CPUs and memory to the application and to Oracle. Because the Etherplex board provides only rlogin and telnet support, it cannot help in a client/server environment, but if your application uses terminal logins, Etherplex can greatly enhance your system. Transaction Monitors Transaction Monitors can perform many functions: from multiplexing Oracle connections to providing system fault tolerance. By using a Transaction Monitor (TM), you can offload much of the work performed by Oracle to one or more front-end machines. Because much of the system memory is used by the server processes, using a TM can reduce the number of server processes on the server by offloading them to the front-end machines. Heres how TM works. Transaction Monitors provide a mechanism to use in your application code that allows you to queue requests to an Oracle back-end process. The front-end of the TM takes Oracle requests and places them in a queue. The back-end of the TM takes the requests off the queue and transmits them to Oracle through SQL*Net. Although there may be hundreds or thousands of front-end processes, you can limit the back-end processes connected to Oracle. Each user process creates a front-end process; the number of back-end processes is determined by the database administrator or applications developer. By using a TM, you can support hundreds or thousands of users and at the same time limit the number of connections into the database. You can use a TM to save server memory or to reduce contention. By separating the queues into different types of transactions, you can limit certain transactions (thus throttling them).
Performance VerificationOnce you design and build your system, you must have some way of verifying that you can achieve the required throughput and user load. Verification can be extremely difficult, time consuming, and expensiveespecially in a client/server environment. A class of very good load-testing software and hardware is available that can simulate both local and network users, but it is very expensive. Writing your own code may be the best alternative for load testing. You should consider several things when building load-testing software:
By putting together a good test program, you not only test the system for bugs, you can get a good idea about whether tuning changes are helping or hurting. The following sections look at what you should test in the RDBMS and the operating system.
|
![]() |
Products | Contact Us | About Us | Privacy | Ad Info | Home
Use of this site is subject to certain Terms & Conditions, Copyright © 1996-2000 EarthWeb Inc. All rights reserved. Reproduction whole or in part in any form or medium without express written permission of EarthWeb is prohibited. |